// https://www.w3cschool.cn/typescript/typescript-modules.html 学习地址

// boolean
var isShow: boolean = true
isShow = false


// number
var num: number = 1
num = 2


// string
var str: string = 'zs'
str = 'ls'


// Void
function logName(): void {
    console.log(1);
}


// null & undefined
let u: undefined = undefined;
let n: null = null;
// undefined 和 null 是所有类型的子类型。也就是说 undefined 类型的变量，可以赋值给 number 类型的变量
let num1: number = undefined
let str1: string = null


// any
let myFavoriteNumber: string = 'seven';
// myFavoriteNumber = 7; // error
let myFavo: any = 'seven'
myFavo = 1
myFavo = true
// 在任意值上访问任何属性都是允许的：
let anyThing: any = 'hello';
console.log(anyThing.myName);
console.log(anyThing.myName.firstName);
// 也允许调用任何方法：

// 未声明类型的变量
// 变量如果在声明的时候，未指定其类型，那么它会被识别为任意值类型
let something;
something = 'seven';
something = 12
something = true
